1. Field of the Invention
The invention relates to communications systems in general and, more specifically, the invention relates to a video compression technique suitable for use in an interactive multimedia information delivery system.
2. Description of the Background Art
Over the past few years, the television industry has seen a transformation in a variety of techniques by which its programming is distributed to consumers. Cable television systems are doubling or even tripling system bandwidth with the migration to hybrid fiber coax (HFC) cable plant. Customers unwilling to subscribe to local cable systems have switched in high numbers to direct broadcast satellite (DBS) systems. And, a variety of other approaches have been attempted focusing primarily on high bandwidth digital technologies, intelligent two way set top boxes, or other methods of trying to offer service differentiated from standard cable and over the air broadcast systems.
With this increase in bandwidth, the number of programming choices has also increased. Leveraging off the availability of more intelligent set top boxes, several companies such as Starsight Telecast Inc. and TV Guide, Inc. have developed elaborate systems for providing an interactive listing of a vast array of channel offerings, expanded textual information about individual programs, the ability to look forward to plan television viewing as much as several weeks in advance, and the option of automatically programming a VCR to record a future broadcast of a television program.
Unfortunately, the existing program guides have several drawbacks. They tend to require a significant amount of memory, some of them needing upwards of one megabyte of memory at the set top terminal (STT). They are very slow to acquire their current database of programming information when they are turned on for the first time or are subsequently restarted (e.g., a large database may be downloaded to a STT using only a vertical blanking interval (VBI) data insertion technique). Disadvantageously, such slow database acquisition may result in out of date database information or, in the case of a pay per view (PPV) or video on demand (VOD) system, limited scheduling flexibility for the information provider.
The use of compression techniques to reduce the amount of data to be transmitted may increase the speed of transmitting program guide information. In several communications systems, the data to be transmitted is compressed so that the available transmission bandwidth is used more efficiently. For example, the Moving Pictures Experts Group (MPEG) has promulgated several standards relating to digital data delivery systems. The first, known as MPEG-1 refers to ISO/IEC standards 11172 and is incorporated herein by reference. The second, known as MPEG-2, refers to ISO/IEC standards 13818 and is also incorporated herein by reference. A compressed digital video system is described in the Advanced Television Systems Committee (ATSC) digital television standard document A/53, and is incorporated herein by reference.
The above-referenced standards describe data processing and manipulation techniques that are well suited to the compression and delivery of video, audio and other information using fixed or variable rate digital communications systems. In particular, the above-referenced standards, and other xe2x80x9cMPEG-likexe2x80x9d standards and techniques, compress, illustratively, video information using intra-frame coding techniques (such as run-length coding, Huffman coding and the like) and inter-frame coding techniques (such as forward and backward predictive coding, motion compensation and the like). Specifically, in the case of video processing systems, MPEG and MPEG-like video processing systems are characterized by prediction-based compression encoding of video frames with or without intra- and/or inter-frame motion compensation encoding.
However, the MPEG-1 and MPEG-2 standards have, in some instances, very strict elementary stream and transport stream formats, causing usage of extra bandwidth for certain applications. For example, if a number of interactive program guide (IPG) pages were created as video sequences, only limited number of pages could be encoded into a transport stream(s) at a specified bandwidth.
Therefore, it is desirable to provide a video compression and decompression technique that enables an increased number of programs (video sequences) to be transmitted within an MPEG-2 transport stream(s).
The invention is a method and apparatus for compressing a plurality of video sequences, where each sequence has information common with other video sequences. Ideally, the invention ensemble encodes the video sequences such that the common information between the sequences is encoded into one stream and the non-common information is respectively encoded into separate streams. However, when using MPEG encoding to encode the sequences, some common information will appear in the stream primarily carrying the non-common information and some non-common information will appear in the stream primarily carrying the common information. For other forms of encoding, this cross contamination of common and non-common information may not occur.
In a practical embodiment of the invention, the invention ensemble encodes the MPEG-compliant video sequences into an MPEG-compliant transport stream using less predicted frame information than separately encoding each video sequence. The plurality of encoded elementary streams are processed to create one stream having only predicted frames (e.g., B and P frames) and other streams having the intra-coded frame (reference frame) of each stream. The stream containing the predicted frames represents (for the most part) the common information across all the sequences, while the streams containing the reference frames represent a combination of common and non-common information, illustratively the guide portion ofan interactive program guide, that is different from sequence to sequence. The predicted frame stream is assigned a packet identifier (PID) code and the other streams are each assigned their own separate PIDs. All the streams are then assembled into a transport stream and transmitted to a receiver. The receiver reassembles any of the streams by concatenating a selected reference frame stream with the predicted frame stream. The stream is then decoded to form a video frame sequence for display.
One illustrative application for the inventive encoder is to efficiently encode and transmit a user interface screens such as a program guide, interactive program guide, electronic program guide, navigator and the like. The user interface is illustratively embodied in an interactive program guide (IPG). An IPG is defined in a page having a graphic grid of programming information and a video portion for displaying movie trailers, informative video, promotional video and the like. Audio also accompanies the video. Each page is represented by a video frame sequence and many pages can display a 24 hours period of available programming. Since the sequences are generally identical except for differing program grids in each sequence, each of the sequences are encoded as discussed above. As such, to decode a particular IPG page for display, a receiver need only select a PID for a specific page and the receiver will assemble the predicted stream with the selected reference frame to produce a stream for decoding. A decoder then produces the frame sequence for the selected IPG page. To change pages, the receiver selects another reference frame PID, attaches that stream to the predicted stream, and then produces a different IPG page. Since the frame sequences are similarly ensemble encoded in a synchronous manner, the transition from page to page is seamless.
The method of invention works with MPEG-1, MPEG-2, and any future derivatives of MPEG that are compliant with these first two versions. It is also important to note that the invention is equally applicable to any encoding system, including systems that does not utilize MPEG video and transport stream formats.